In recent years, in order to raise an additional value of a print result, there is such a tendency that advanced novel additional functions such as copy guarding function, form overlay, digital watermark, job tracing function, and the like are added to the printer driver. In many cases, those additional functions have additional values more than normal printing, it is presumed that they are provided as onerous options without packaged together with a basic printer driver set.
In order to suppress dependency on versions of a plurality of printer drivers and a model of a printing apparatus as much as possible, those functions are provided as additional add-in (plug-in) modules having a common expanding interface.
There is such an advantage that if a system corresponds to the common expanding interface, even in a combination with a basic printer driver set which was released in the past, merely by providing the add-in module, the novel additional function can be realized. In other words, by providing the novel function by the add-in, the function which is not presumed at the beginning of the sale of the printing apparatus and cannot be recognized by the printing apparatus can be also additionally added to the printer driver later.
In Japanese Patent Application Laid-Open No. 2005-208895, there has been disclosed a detailed method of adding and deleting function expanding modules such as program file, data file, and the like to a printer driver corresponding to the common expanding interface as mentioned above.
In Japanese Patent Application Laid-Open No. H10-124435, there has been disclosed the following technique. A file searching program 7 searches for a printer driver registered in a registry file 12. A check program 6 confirms whether or not a printer driver of the same line-up as that of a driver of a second printer 11 has already been registered in the registry file 12. The check program discriminates the presence or absence of competition between resources of the driver of the second printer 11 to be newly registered and resources of a driver of a first printer which has already been registered. That is, if an I/O port address which is allocated to the second printer 11 and that allocated to the first printer compete, the processing routine advances to step 106. If they do not compete, step 105 follows. The driver of the second printer 11 is registered into the registry file 12 by a file writing program 5 and the printer driver is written into an auxiliary storing device such as a hard disk or the like of a computer, thereby executing installation. If the I/O port address compete, in step 106, in order to notify the user that the installing order is incorrect, a predetermined warning is displayed onto a monitor 13 by an alarm displaying program 9. The driver is deleted and the installing order is changed.
However, in the conventional techniques, when the module is added, nothing is considered with respect to operating order of the modules which have already been installed. Therefore, there is such a problem that when the function expanding module is optionally added to the modules constructing the existing printer driver, there is a case where the function expanding module does not operate or does not operate normally.
Further, according to Japanese Patent Application Laid-Open No. H10-124435, in the case where the driver is installed once and a setting of a port competes, the installing order is exchanged.
The above problem is not limited to the printer driver but can occur in the whole program to which modules can be added.